﻿namespace FibMatrix
{
    // 暂时关闭，用wx的覆盖方式
    /// <summary>
    /// 封装一层，处理微信小游戏的不同实现，所有代码都不应使用unity原生的playerPrefs
    /// TODO, 提示误用原生接口
    /// 注意：调用均为同步调用， 容易阻塞游戏主线程造成卡顿，不建议频繁调用
    /// wx sdk的覆盖方式把它放到顶层namespace下，这样webgl下不会查找到原生接口，只要不是UnityEngine.PlayerPrefs的写法就没事
    /// 但对于生成wrapper代码和脚本域代码来说在编辑器会用原生的，在wx上会在构建时去掉namespace host_前缀应该也能找到wx的顶层接口
    /// </summary>
//     public static class PlayerPrefs
//     {
//         public static void SetInt(string key, int value)
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             WeChatWASM.WX.StorageSetIntSync(key, value);
// #else
//             UnityEngine.PlayerPrefs.SetInt(key, value);
// #endif
//         }
//
//         public static int GetInt(string key, int defaultValue = 0)
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             return WeChatWASM.WX.StorageGetIntSync(key, defaultValue);
// #else
//             return UnityEngine.PlayerPrefs.GetInt(key, defaultValue);
// #endif
//         }
//
//         public static void SetString(string key, string value)
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             WeChatWASM.WX.StorageSetStringSync(key, value);
// #else
//             UnityEngine.PlayerPrefs.SetString(key, value);
// #endif
//         }
//
//         public static string GetString(string key, string defaultValue = "")
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             return WeChatWASM.WX.StorageGetStringSync(key, defaultValue);
// #else
//             return UnityEngine.PlayerPrefs.GetString(key, defaultValue);
// #endif
//         }
//
//         public static void SetFloat(string key, float value)
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             WeChatWASM.WX.StorageSetFloatSync(key, value);
// #else
//             UnityEngine.PlayerPrefs.SetFloat(key, value);
// #endif
//         }
//
//         public static float GetFloat(string key, float defaultValue = 0)
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             return WeChatWASM.WX.StorageGetFloatSync(key, defaultValue);
// #else
//             return UnityEngine.PlayerPrefs.GetFloat(key, defaultValue);
// #endif
//         }
//
//         public static void DeleteAll()
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             WeChatWASM.WX.StorageDeleteAllSync();
// #else
//             UnityEngine.PlayerPrefs.DeleteAll();
// #endif
//         }
//
//         public static void DeleteKey(string key)
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             WeChatWASM.WX.StorageDeleteKeySync(key);
// #else
//             UnityEngine.PlayerPrefs.DeleteKey(key);
// #endif
//         }
//
//         public static bool HasKey(string key)
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             return WeChatWASM.WX.StorageHasKeySync(key);
// #else
//             return UnityEngine.PlayerPrefs.HasKey(key);
// #endif
//         }
//
//         public static void Save()
//         {
// #if UNITY_WEBGL && !UNITY_EDITOR
//             // empty
// #else
//             UnityEngine.PlayerPrefs.Save();
// #endif
//         }
//     }

}